// Copyright (c) 2021 Terminus, Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//      http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

package project

import (
	"testing"

	"github.com/alecthomas/assert"

	"github.com/erda-project/erda/apistructs"
)

func TestSetMeta(t *testing.T) {
	temp := &TemplateZip{
		packageName: packageResource,
		ProjectID:   1,
		ProjectName: "erda",
	}
	err := temp.SetMeta()
	assert.NoError(t, err)
}

func TestGetPackageName(t *testing.T) {
	temp := &TemplateZip{
		packageName: packageResource,
		ProjectID:   1,
		ProjectName: "erda",
	}
	packageName := temp.GetPackageName()
	assert.Equal(t, "project-template", packageName)
}

func TestGetProjectID(t *testing.T) {
	temp := &TemplateZip{
		packageName: packageResource,
		ProjectID:   1,
		ProjectName: "erda",
	}
	projectID := temp.GetProjectID()
	assert.Equal(t, uint64(1), projectID)
}

func TestGetIdentityInfo(t *testing.T) {
	temp := &TemplateZip{
		packageName:  packageResource,
		ProjectID:    1,
		ProjectName:  "erda",
		IdentityInfo: apistructs.IdentityInfo{UserID: "1"},
	}
	identityInfo := temp.GetIdentityInfo()
	assert.Equal(t, "1", identityInfo.UserID)
}
